24 research outputs found

    Support for Bidirectional Model-to-Text Transformations

    Get PDF
    In recent years, model-driven approaches and processes have established themselves as pragmatic and feasible solutions with tangible advantages. Transformations play a central role in any model-driven solution and, as interest in textual modelling grows, providing concepts and tools for supporting a high-level and declarative specification of bidirectional model-to-text transformations becomes a vital area of research. Our paper identifies important areas and scenarios for model-to-text transformations that are not or only partially supported by currently existing solutions. Based on the requirements of a real-world case study, we introduce a new concept that has been inspired by a successful bidirectional model-to-model transformation approach: Triple Graph Grammars

    A Solution to the Flowgraphs Case Study using Triple Graph Grammars and eMoflon

    Full text link
    After 20 years of Triple Graph Grammars (TGGs) and numerous actively maintained implementations, there is now a need for challenging examples and success stories to show that TGGs can be used for real-world bidirectional model transformations. Our primary goal in recent years has been to increase the expressiveness of TGGs by providing a set of pragmatic features that allow a controlled fallback to programmed graph transformations and Java. Based on the Flowgraphs case study of the Transformation Tool Contest (TTC 2013), we present (i) attribute constraints used to express complex bidirectional attribute manipulation, (ii) binding expressions for specifying arbitrary context relationships, and (iii) post-processing methods as a black box extension for TGG rules. In each case, we discuss the enabled trade-off between guaranteed formal properties and expressiveness. Our solution, implemented with our metamodelling and model transformation tool eMoflon (www.emoflon.org), is available as a virtual machine hosted on Share.Comment: In Proceedings TTC 2013, arXiv:1311.753

    Incremental Model Synchronization with Precedence-Driven Triple Graph Grammars

    Get PDF
    Triple Graph Grammars (TGGs) are a rule-based technique with a formal background for specifying bidirectional model transformation and, hence, can be applied to transform a given model into another and vice versa. In practice, models are either created from scratch by using a single input model, or incrementally synchronized by propagating changes between integrated models. The outstanding property of incremental model synchronization is that in average only small portions of the whole model have to be retransformed as mostly only a subset of a model has been changed. Hence, we have the opportunity to (i) improve efficiency of model transformations and (ii) to retain as much information as possible. Regarding information preserving capabilities, this offers the chance to qualitatively improve the results of model transformations. This is because additional model content (e.g., model elements or user specific decision during the actual transformation process), which is not covered by the model transformation itself, will be mostly retained. In practical scenarios, unidirectional rules for incremental forward and incremental backward transformation are automatically derived from the specified TGG rules, and the overall transformation process is governed by a control algorithm. Current incremental approaches either have a runtime complexity that depends on the size of related models and not on the number of changes and their affected elements, or do not pursue formalization to give reliable predictions regarding the expected results, or impose such restrictions on the language of TGGs that the remaining expressiveness is not capable of certain real-world scenarios. For these reasons, the aim of this thesis is to develop a novel approach to incremental model synchronization with TGGs that (i) is efficient regarding the number of changes, (ii) retains as much information as possible, (iii) complies with important formal properties, and (iv) is expressive enough for real-world scenarios. Therefore, we introduce an incremental model synchronization algorithm for TGGs, which employs a static analysis on TGG specifications to efficiently determine the range of influence of model changes at runtime and, thus, to regard only these elements for synchronization. Together with further improvements and critical discussions we will be able to show that this approach is a suitable means for complex model synchronization tasks

    Erzeugung von vorlesbarem Text aus LaTeX-Dokumenten

    No full text

    eMoflon: A Metamodelling and Model Transformation Tool

    No full text

    eMoflon: Leveraging EMF and Professional CASE Tools

    No full text
    MOFLON supports standard compliant metamodeling, code generation and model transformations. Development started in 2002 and it has since then been used successfully in a number of case studies for various applications. In recent years, the Eclipse Modeling Framework (EMF) has become a de facto standard, offering stable and well-tested components. In addition, numerous professional, industrial strength CASE tools have become increasingly affordable and open to extensions. We are convinced that it is high-time to re-engineer MOFLON and leverage modern MDSD technology. In this paper, we report on a complete re-engineering of MOFLON to face future challenges and meet industrial requirements. We present the new eMoflon, listing the various factors that led to our decision to re-engineer the old system, sharing our experience in tailoring a professional UML CASE tool for our frontend, explaining how we combined EMF and Eclipse technologies with a generic model transformation engine, and discussing our support for a safe interaction between automatically generated and hand-crafted code via an explicitly modeled facade

    Model-Driven Systems Engineering: State-of-the-Art and Research Challenges

    No full text
    Model-driven software engineering is a well investigated and heavily used technique for software development. Within automation engineering we want to benefit from these ideas and concepts by adopting them to systems engineering. Parallel processes in systems engineering demand high synchronization effort between different disciplines, their engineers, and processes. Unfortunately, these processes are concurrently established, but do only support sequential engineering. With model-driven systems engineering we want to enable systems engineers to model their domain knowledge and tooling on a more abstract level. Thus, engineers may benefit in increasing efficiency and quality for the resulting products from existing integration approaches of engineering artifacts and tools. By means of an integration approach we are able to synchronize and check consistency of model data that evolved parallel in different tools. In this contribution, we present a new classification scheme for integration scenarios and explain our modeling and integration approach together with a proof-of-concept use case and prototype, located in automation engineering

    Extended Triple Graph Grammars with Efficient and Compatible Graph Translators

    No full text
    Abstract. Model-based software development processes often force their users to translate instances of one modeling language into related instances of another modeling language and vice-versa. The underlying data structure of such languages usually are some sort of graphs. Triple graph grammars (TGGs) are a formally founded language for describing correspondence relationships between two graph languages in a declarative way. Bidirectional graph language translators can be derived from a TGG, which maps pairs of related graph instances onto each other. These translators must fulfill certain compatibility properties with respect to the correspondence relationships established by their TGG. These properties are guaranteed for the original TGG approach as published 15 years ago. However, its expressiveness is pushed to the limit in most real world scenarios. Furthermore, the original approach relies on a parsing algorithm with exponential runtime complexity. In this contribution, we study a more expressive class of TGGs with negative application conditions and show for the first time that derived translators with a polynomial runtime complexity still preserve the above mentioned compatibility properties. For this purpose, we introduce a new characterization of wellformed TGGs together with a new translation rule scheduling algorithm that considers dangling edges of input graphs
    corecore